home *** CD-ROM | disk | FTP | other *** search
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- % Wochentag zu einem Datum ermitteln %
- % von Andreas Schrell %
- % Windhoevel 2 %
- % 5600 Wuppertal 2 %
- % Tel. 0202/666889 %
- % E-Mail: ma107 at dhafeu11.bitnet %
- % Version 1.0 vom 9.10.1991 %
- % %
- % Aufruf: %
- % \Wochentag dd.mm.jjjj. %
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
- {\catcode`\@=11
- \newcount\@tag
- \newcount\@monat
- \newcount\@jahr
- \newcount\@ja
- \newcount\@jb
- \newcount\@ha
- \newcount\@hb
- \newcount\@hc
- \newcount\@b
- \newcount\@f
- \gdef\Wochentag #1.#2.#3.{\@tag=#1\@monat=#2\@jahr=#3
- \ifnum\@jahr<100\advance\@jahr by 1900\else\fi
- \ifnum\@monat<3 % if monat<3
- \advance\@monat by 10 % monat:=monat+10
- \advance\@jahr by -1 % jahr:=jahr-1
- \else % else
- \advance\@monat by -2 % monat:=monat-2
- \fi % fi
- \@ja=\@jahr\divide\@ja by 100 % ja:=jahr/100
- \@jb=-\@ja\multiply\@jb by 100
- \advance \@jb by \@jahr % jb:=jahr-ja*100
- \@ha=\@monat\multiply\@ha by 13
- \advance\@ha by -1 % ha:=13*monat-1
- \divide\@ha by 5 % ha:=ha/5
- \@hb=\@jb\divide\@hb by 4 % hb:=jb/4
- \@hc=\@ja\divide\@hc by 4 % hc:=ja/4
- \@b=\@ha\advance\@b by \@hb
- \advance\@b by \@hc % b:=ha+hb+hc
- \@f=\@b\advance\@f by \@jb
- \advance\@f by \@tag % f:=b+jb+tag
- \multiply \@ja by 2
- \advance\@f by -\@ja % f:=f-2*ja
- \@ha=\@f
- \divide\@ha by 7
- \multiply\@ha by 7
- \advance\@f by -\@ha % f:= f mod 7
- \ifcase\@f Sonntag\or Montag\or Dienstag\or Mittwoch\or Donnerstag\or
- Freitag\or Samstag\else ????????\fi}
- }
-
-